package testes;

import static org.junit.Assert.*;


import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.quasar.copaPaises.businessLayer.*;;

public class GoloTest {

	@BeforeClass
	public static void setUpBeforeClass() throws Exception {
	}

	@AfterClass
	public static void tearDownAfterClass() throws Exception {
	}

	@Before
	public void setUp() throws Exception {
		 CalendarDate.allInstances.clear();
		  Campeonato.allInstances.clear();
		  Cartao.allInstances.clear();
		  Cidade.allInstances.clear();
		  Clube.allInstances.clear();
		  Continente.allInstances.clear();
		  Equipa.allInstances.clear();
		  Estadio.allInstances.clear();
		  Golo.allInstances.clear();
		  Grupo.allInstances.clear();
		  Jogador.allInstances.clear();
		  Jogo.allInstances.clear();
		  Membro.allInstances.clear();
		  Pais.allInstances.clear();
		  Participacao.allInstances.clear();
		  Participante.allInstances().clear();
		  Treinador.allInstances.clear();
	}

	@After
	public void tearDown() throws Exception {
		 CalendarDate.allInstances.clear();
		  Campeonato.allInstances.clear();
		  Cartao.allInstances.clear();
		  Cidade.allInstances.clear();
		  Clube.allInstances.clear();
		  Continente.allInstances.clear();
		  Equipa.allInstances.clear();
		  Estadio.allInstances.clear();
		  Golo.allInstances.clear();
		  Grupo.allInstances.clear();
		  Jogador.allInstances.clear();
		  Jogo.allInstances.clear();
		  Membro.allInstances.clear();
		  Pais.allInstances.clear();
		  Participacao.allInstances.clear();
		  Participante.allInstances().clear();
		  Treinador.allInstances.clear();
	}

	@Test
	public final void testGolo() {
		Golo golo = new Golo();
		assertNotNull(golo);
	}

	@Test
	public final void testGoloIntMembro() {
		Golo golo = new Golo(20,new Membro());
		assertNotNull(golo);
		assertNotNull(golo.minuto());
		assertNotNull(golo.marcador());
		
	}

	@Test
	public final void testMinuto() {
		Golo golo = new Golo(20,new Membro());
		assertEquals(golo.minuto(), 20);
		
	}

	@Test
	public final void testSetMinuto() {
		Golo golo = new Golo();
		int minuto = 20;
		golo.setMinuto(minuto);
		assertSame(golo.minuto(), minuto);
		
	}

	@Test
	public final void testMarcador() {
		Membro membro = new Membro();
		Golo golo = new Golo(20,membro);
		assertEquals(golo.marcador(), membro);
	}

	@Test
	public final void testSetMarcador() {
		Golo golo = new Golo();
		Membro membro = new Membro();
		golo.setMarcador(membro);
		assertSame(golo.marcador(),membro);
	}

	@Test
	public final void testToString() {
		Golo golo = new Golo(20,new Membro());
		String toString = "Golo [minuto=20, marcador=Membro [minuto_entrada=0, minuto_saida=0, equipa=null, jogador=null]\n]\n";
		assertEquals(golo.toString(),toString);
	}

}
